using MediatR;
using UniversalAdmin.Domain.Entities.App;
using UniversalAdmin.Domain.Common;

namespace UniversalAdmin.Domain.DomainEvents;

public class MenuCreatedEvent : IDomainEvent, INotification
{
    public AppMenu Menu { get; }
    public DateTime OccurredOn { get; }
    public MenuCreatedEvent(AppMenu menu)
    {
        Menu = menu;
        OccurredOn = DateTime.UtcNow;
    }
}
public class MenuUpdatedEvent : IDomainEvent, INotification
{
    public AppMenu Menu { get; }
    public DateTime OccurredOn { get; }
    public MenuUpdatedEvent(AppMenu menu)
    {
        Menu = menu;
        OccurredOn = DateTime.UtcNow;
    }
}
public class MenuDeletedEvent : IDomainEvent, INotification
{
    public AppMenu Menu { get; }
    public DateTime OccurredOn { get; }
    public MenuDeletedEvent(AppMenu menu)
    {
        Menu = menu;
        OccurredOn = DateTime.UtcNow;
    }
} 